package com.example.javaairportflightanalysis.service.impl;

import com.example.javaairportflightanalysis.dao.BaseApueMapper;
import com.example.javaairportflightanalysis.domin.dto.BaseAisoDto;
import com.example.javaairportflightanalysis.service.BaseApueService;
import com.example.javaairportflightanalysis.utils.GroupAndPageUtil;
import com.github.pagehelper.PageInfo;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;

import java.text.ParseException;
import java.util.ArrayList;
import java.util.List;

@Service
public class BaseApueServiceImpl implements BaseApueService {
    @Resource
    BaseApueMapper baseApueMapper;
    /**
     * 机场是否开启
     */
    @Override
    public PageInfo getAiso(Integer pageNum, Integer pageSize) throws ParseException {
        List<BaseAisoDto> baseAisoDtos = baseApueMapper.getAiso();
        return setApue(pageNum, pageSize, baseAisoDtos);
    }

    @Override
    public PageInfo selectAiso(Integer pageNum, Integer pageSize, String cnnm, String ddtm) throws ParseException {
        List<BaseAisoDto> baseAisoDtos = baseApueMapper.searchAiso(cnnm, ddtm);
        return setApue(pageNum, pageSize, baseAisoDtos);
    }


    private PageInfo setApue(Integer pageNum, Integer pageSize, List<BaseAisoDto> baseAisoDtos) throws ParseException {
        List<BaseAisoDto> mergeList = new ArrayList<>();
        for (BaseAisoDto baseAisoDto : baseAisoDtos) {
            if (baseAisoDto.getAISO() != null || baseAisoDto.getAISO() != "") {
                baseAisoDto.setAISO("已开启");
            }
            String ddtm1 = GroupAndPageUtil.getDate(baseAisoDto.getDDTM());
            baseAisoDto.setDDTM(ddtm1);
            mergeList.add(baseAisoDto);
        }
        PageInfo pageInfo = GroupAndPageUtil.getPageInfo(mergeList, pageNum, pageSize);

        return pageInfo;
    }
}
